As devices have become increasingly capable, the desirability of exchanging information between devices has increased. However, different devices often use different, incompatible communication link technologies. Accordingly, allowing devices to exchange information has been difficult.
The desirability of allowing communications between different devices that are not formally associated with one another, for example by being interconnected to the same network, has also increased as devices have become more portable. In particular, because any number of different devices can be associated with a user or a work space, it would be desirable to allow different devices to exchange information or share resources. For example, it would be desirable to allow a global positioning system (GPS) receiver associated with the user to provide location information to a personal digital assistant (PDA) associated with that user and running a mapping application to exchange information. Furthermore, it would be desirable to allow such a PDA to initiate automatic dialing of numbers held in a directory stored on the PDA by a wireless telephone also associated with the user. As yet another example, it would be desirable to allow such devices to communicate with a vehicle data bus, such as a controller area network (CAN) and to exchange information with one another, when located in or associated with a user's vehicle.
Although systems integrating the functions of various types of devices have recently been made available, such arrangements are not truly flexible. For example, devices integrating PDAs and telephones, or PDAs and GPS receivers, are now available. However, such devices tend to be cumbersome to use and expensive. In addition, the ability of such devices to communicate with additional devices has been limited or nonexistent. As still another example, vehicle manufacturers have offered cellular telephones that are capable of being interconnected to audio, visual display, and data entry functions provided by automobiles. However, such systems have been difficult or impossible to upgrade when new technology, for example new cellular communication technology, has become available. Such systems have also been incapable of allowing various functions otherwise available on the vehicle to be integrated with one another, thereby limiting the potential for information sharing, and have typically had no ability to interconnect a vehicle to devices other than a specific model of cellular telephone. Furthermore, such systems have been expensive.
In many cases, the difficulty with allowing different devices to share information has been the fact that different devices often use incompatible firmware or operating systems. Furthermore, different devices often use different communication link technologies. Accordingly, in order to allow devices to communicate with one another, it has been necessary for developers to specifically plan ahead, and provide extensive specialized code, in order to allow for such interoperability. In particular, developers have been required to anticipate and to provide programming to support interoperability between known devices as part of their development. Accordingly, devices have not been capable of interoperating with other devices unless prior knowledge of the exact operating parameters of such other devices was available. Also, devices intended for communication with one another would need to be provided with compatible communication link technology.
Attempts at overcoming some of these limitations have been made. For example, computer networks have been used to exchange information between different devices. However, such arrangements have required individual devices to provide all of the layers required for communications over that network, either through integration with the device itself or through the use of a specialized adaptor for that device. In addition, in order for different devices to share information, the higher level protocols of at least one of the devices must conform to those of the other device. Accordingly, even when devices have been designed to be compatible with a communication link comprising an existing network, they must still adapt to the requirements of one or more other devices if information is to be exchanged or resources shared. For example, attempts have been made to expand the types of devices in a vehicle that can be interconnected using a standardized communications protocol. However, such systems do not solve the problem of requiring each interconnected device to be specially adapted to the standardized protocol, the standardized protocol must include messages required by all the interconnected devices, and the interconnected devices must support the communications link technologies used by the system. Therefore, such systems have remained inflexible and expensive to implement, and have required prior knowledge of the devices that can be joined to the system and the capabilities of those devices.